ivy Task: Dependencies কিভাবে রিট্রিভ করবেন

Java Technologies - অ্যাপাচি আইভি (Apache IVY) IVY Retrieve এবং Publish Task |
147
147

অ্যাপাচি আইভি (Apache Ivy) একটি শক্তিশালী ডিপেনডেন্সি ম্যানেজমেন্ট টুল যা জাভা প্রোজেক্টগুলোর জন্য ব্যবহৃত হয়। Ivy Task ব্যবহার করে আপনি খুব সহজেই প্রোজেক্টের জন্য প্রয়োজনীয় ডিপেনডেন্সি গুলি রিট্রিভ (retrieve) করতে পারেন। এই টাস্কটি ব্যবহার করে আপনি আইভির মাধ্যমে নির্দিষ্ট রেপোজিটরি থেকে ডিপেনডেন্সি গুলি ডাউনলোড এবং লোকাল ক্যাশে সংরক্ষণ করতে পারবেন।

ivy Task কী?

Ivy Task হল অ্যাপাচি আইভির একটি বিল্ট-ইন টাস্ক যা ডিপেনডেন্সি রিট্রিভ করার জন্য ব্যবহৃত হয়। এটি সাধারণত অ্যাপাচি অ্যান্ট (Apache Ant) বিল্ড টুলের সাথে ব্যবহৃত হয় এবং এটি ডিপেনডেন্সি গুলো নির্দিষ্ট রেপোজিটরি থেকে ডাউনলোড করে প্রোজেক্টের বিল্ড ডিরেক্টরিতে সংগ্রহ করে।

ivy Task এর সাধারণ সিনট্যাক্স

<target name="retrieve-dependencies">
    <ivy:retrieve/>
</target>

এখানে, <ivy:retrieve/> টাস্কটি ডিপেনডেন্সি গুলো নির্দিষ্ট কনফিগারেশন অনুসারে রিট্রিভ করবে।

ivy Task এর কনফিগারেশন উদাহরণ

ivy.xml ফাইল কনফিগারেশন

আইভির ডিপেনডেন্সি রিট্রিভ করতে প্রথমে আপনাকে ivy.xml ফাইল তৈরি করতে হবে, যেখানে আপনি প্রোজেক্টের ডিপেনডেন্সি গুলি উল্লেখ করবেন। উদাহরণস্বরূপ:

<ivy-module version="2.0">
    <info organisation="com.example" module="myproject"/>
    
    <dependencies>
        <dependency org="org.springframework" name="spring-core" rev="5.2.8.RELEASE"/>
        <dependency org="com.google.guava" name="guava" rev="30.0-jre"/>
    </dependencies>
</ivy-module>

এখানে, org.springframework এবং com.google.guava এর ডিপেনডেন্সি গুলি উল্লেখ করা হয়েছে।

ivysettings.xml ফাইল কনফিগারেশন

আপনাকে ivysettings.xml ফাইলেও রেপোজিটরি এবং ক্যাশ কনফিগারেশন নির্ধারণ করতে হবে:

<ivysettings>
    <repositories>
        <repository name="central" url="https://repo1.maven.org/maven2"/>
    </repositories>

    <cache name="default-cache" path="${user.home}/.ivy2/cache"/>
</ivysettings>

এখানে, https://repo1.maven.org/maven2 URL থেকে ডিপেনডেন্সি সংগ্রহ করা হবে এবং ক্যাশ ডিরেক্টরি হিসেবে ~/.ivy2/cache ব্যবহার করা হবে।

ivy Task এর ব্যবহার

ডিপেনডেন্সি রিট্রিভ

<target name="retrieve-dependencies">
    <ivy:retrieve/>
</target>

এটি ivy.xml ফাইলের ডিপেনডেন্সি গুলি রিট্রিভ করবে এবং এগুলিকে লোকাল ক্যাশে এবং বিল্ড ডিরেক্টরিতে সংরক্ষণ করবে।

ডিপেনডেন্সি রিট্রিভের জন্য ডিরেক্টরি প্যাটার্ন কাস্টমাইজ করা

আপনি যদি ডিপেনডেন্সির ফাইলগুলো কোন নির্দিষ্ট ডিরেক্টরিতে রাখতে চান, তাহলে retrieve টাস্কে pattern অ্যাট্রিবিউট ব্যবহার করে প্যাটার্ন কাস্টমাইজ করতে পারেন:

<target name="retrieve-dependencies">
    <ivy:retrieve pattern="libs/[artifact]-[revision](-[classifier]).[ext]"/>
</target>

এখানে, ডিপেনডেন্সির আর্কাইভ ফাইলগুলি libs/ ডিরেক্টরিতে [artifact]-[revision] প্যাটার্ন অনুসারে রিট্রিভ হবে।

নির্দিষ্ট ডিপেনডেন্সি রিট্রিভ করা

আপনি যদি শুধুমাত্র নির্দিষ্ট একটি ডিপেনডেন্সি রিট্রিভ করতে চান, তবে retrieve টাস্কে only অ্যাট্রিবিউট ব্যবহার করতে পারেন:

<target name="retrieve-single-dependency">
    <ivy:retrieve only="org.springframework:spring-core"/>
</target>

এটি শুধুমাত্র spring-core ডিপেনডেন্সি রিট্রিভ করবে।

ivy Task এর অন্যান্য অপশন

  • override: যদি আপনার লোকাল ক্যাশে একই ডিপেনডেন্সি পূর্বে ডাউনলোড হয়ে থাকে, এবং আপনি সেটি আবার ডাউনলোড করতে চান, তবে override অ্যাট্রিবিউট ব্যবহার করে আপনি এটি নির্ধারণ করতে পারবেন। উদাহরণ:

    <ivy:retrieve override="true"/>
    
  • confs: ডিপেনডেন্সি রিট্রিভ করার জন্য আপনি নির্দিষ্ট কনফিগারেশন চিহ্নিত করতে পারেন, যেমন compile, runtime, test ইত্যাদি।

    <ivy:retrieve conf="compile"/>
    
  • useOrigin: এটি মূল ডিপেনডেন্সির ফাইলের নাম ব্যবহার করতে পারে:

    <ivy:retrieve useOrigin="true"/>
    

ivy Task এর সুবিধা

  • ডিপেনডেন্সি অটোমেশন: ivy task ব্যবহার করে ডিপেনডেন্সি রিট্রিভ করার প্রক্রিয়া সম্পূর্ণ অটোমেটিকভাবে চলে, যার ফলে ম্যানুয়ালি ডিপেনডেন্সি ডাউনলোডের প্রয়োজন হয় না।
  • কাস্টম প্যাটার্ন এবং ফাইল সংরক্ষণ: ডিপেনডেন্সি ফাইলগুলোর প্যাটার্ন এবং সংরক্ষণের ডিরেক্টরি কাস্টমাইজ করা যায়।
  • লোকাল ক্যাশ ব্যবস্থাপনা: ডিপেনডেন্সি গুলো লোকাল ক্যাশে সংরক্ষণ করা হয়, যা পরবর্তী সময়ে পুনরায় ডাউনলোডের প্রয়োজনীয়তা কমিয়ে দেয় এবং নেটওয়ার্ক ব্যান্ডউইথ সাশ্রয়ী করে।

Ivy Task ডিপেনডেন্সি ম্যানেজমেন্ট প্রক্রিয়াকে সহজ এবং দ্রুত করতে সাহায্য করে, এবং এটি অ্যাপাচি অ্যান্টের সাথে একত্রে ব্যবহৃত হলে প্রোজেক্ট বিল্ডিং এবং ডিপেনডেন্সি রিট্রিভালের জন্য একটি শক্তিশালী টুল হয়ে ওঠে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion